﻿

function LimitarCaracteres(txtOrigen, cantidad, tagIdContador) {
    /* 
    Función para contar los caracteres ingresados en un textbox (y limitar cuando se exceden)
      1er parametro: textbox del que se quieren contar los caracteres
      2do parametro: cantidad de caracteres tope.
      3er parametro: elemento HTML en donde se muestra la cantidad de caracteres. (puede ser DIV o SPAN)
    
    Ejemplo:        
    -------
    <asp:TextBox ID="txtMsgtest" runat="server" CssClass="TextBoxSoloLectura" Rows="4" TextMode="MultiLine" 
    Width="200px" onkeyup="javascript:LimitarCaracteres(this,'100','divCntTest');"></asp:TextBox>
        
    <div id="divCntTest" class="Contador" style="width:70px;">&nbsp;</div>    
    */



    var contador = document.getElementById(tagIdContador);

    
     
    if (contador == null) return;       

    if (txtOrigen.value.length > (cantidad - 10))        
        contador.style.color = "#2222AA" /*Azul*/    
    else 
        contador.style.color = "#228B22"; /*verde*/ ;


    if (txtOrigen.value.length > cantidad) {
        contador.style.color = "#EB145D";
        alert("Se paso el limite de " + cantidad + " caracteres");
        txtOrigen.value = txtOrigen.value.substring(0, cantidad);
        contador.style.color = "#2222AA"
    }

    //El InnerText no funca en Fucking fireFox
    //contador.innerText = txtOrigen.value.length + " de " + cantidad;
    contador.innerHTML = txtOrigen.value.length + " de " + cantidad;
}


function ContarCaracteres(txtOrigen, limite, tagIdContador) {
    /* 
    Función para contar los caracteres ingresados en un textbox (PERO NO limitar cuando se exceden)
    1er parametro: textbox del que se quieren contar los caracteres
    2do parametro: cantidad de caracteres tope.
    3er parametro: elemento HTML en donde se muestra la cantidad de caracteres. (puede ser DIV o SPAN)
    Esto se puede utilizar para los textbox que puedan utilizar TAGs. Advertimos con color rojo sólo cuando se pasa
    del límite.
    
    Ejemplo:        
    -------
    <asp:TextBox ID="txtMsgtest" runat="server" CssClass="TextBoxSoloLectura" Rows="4" TextMode="MultiLine" 
    Width="200px" onkeyup="javascript:ContarCaracteres(this,'160','divCntTest');"></asp:TextBox>
        
    <div id="divCntTest" class="Contador" style="width:70px;">&nbsp;</div>    
    */
    var contador = document.getElementById(tagIdContador);
    if (contador == null) return;

    var longitud = txtOrigen.value.length;

    if (longitud > limite) {
        contador.style.color = "#EB145D"; /*Rojo*/        
    }
    else if (longitud >= (limite - 10) && longitud <= limite) {
        contador.style.color = "#2222AA" /*Azul*/
    }
    else {
        contador.style.color = "#228B22"; /*verde*/;
    }

    //No funca en FireFox
    //contador.innerText = longitud + " de " + limite;
    contador.innerHTML = longitud + " de " + limite;

}